
// `执行器`是传入到Promise构造函数内
// 并且在Promise构造内调用该函数时会传入两个参数
const executor = function(fulfill, reject){
    console.log('executor');
    fulfill(); // 兑现
    //reject(); // 拒绝
}

// 在 Promise 构造函数中传入一个函数做参数
const p = new Promise( executor );

const onFulfilled = function() {
    console.log( 'fulfilled' );
}

const onRejected = function() {
    console.log( 'rejected');
}

console.log( 'begin' );
// 当`期约`被兑现时调用 then 参数内传入的 第一个函数
// 当`期约`被拒绝时调用 then 参数内传入的 第二个函数
p.then( onFulfilled, onRejected );
console.log( 'end' );